#include "udpServer.hpp"
#include <memory>
using namespace Server;
using namespace std;

// 若是输入格式错误，给用户返回使用手册
static void Usage(string proc)
{
    cout << "\nUsage:\n\t" << proc << " local_port\n\n";
}

int main(int argc,char *argv[])
{
    // 我们希望在运行程序的同时带上端口号和ip
    // ./udpServer ip port  -- 这样的格式
    if(argc != 3)
    {
        Usage(argv[0]);
        // 采用枚举的方式来区分不同情况的返回值
        exit(USAGE_ERR);
    }
    // 我们输入是字符串格式，要转成整型 -- atoi
    uint16_t port = atoi(argv[2]);
    string ip = argv[1];

    // 智能指针
    std::unique_ptr<udpServer> usvr(new udpServer(port,ip));
    
    usvr->initServer();

    return 0;
}